27 class TTypesOfElement;
146 bool Running (
int x,
int y);
149 int DistanceTo (
int p_x,
int p_y,
int p_To_x,
int p_To_y);
152 m_OurLandscape->CorrectCoords( p_x, p_y );
153 m_OurLandscape->CorrectCoords( p_To_x, p_To_y );
154 return DistanceTo( p_x, p_y, p_To_x, p_To_y );
157 int DirectionTo(
int p_x,
int p_y,
int p_To_x,
int p_To_y);
160 m_OurLandscape->CorrectCoords( p_x, p_y );
161 return DirectionTo( p_x, p_y, p_To_x, p_To_y );
164 int NextStep (
int weight,
int dir,
int recurselevel);
168 int LegalHabitat(
int p_x,
int p_y);
174 m_OurLandscape->CorrectCoords( p_x, p_y );
175 return LegalHabitat( p_x, p_y );
180 int Cover(
int polyref);
182 int Cover(
int p_x,
int p_y);
190 m_OurLandscape->CorrectCoords( p_x, p_y );
191 return Cover( p_x, p_y );
195 int NutriValue(
int p_x,
int p_y);
198 m_OurLandscape->CorrectCoords( p_x, p_y );
199 return NutriValue( p_x, p_y );
202 int Feeding(
bool p_Disperse);
203 void SeekCover(
int threshold);
204 void SeekNutri(
int p_threshold);
205 int ProbRoadCross (
int p_x,
int p_y,
int p_width);
206 double CalculateRoadMortality (
int p_x,
int p_y,
int p_width);
208 void WalkTo(
int pos_x,
int pos_y);
211 m_OurLandscape->CorrectCoords( pos_x, pos_y );
212 WalkTo( pos_x, pos_y );
223 virtual void BeginStep (
void);
224 virtual void Step (
void);
225 virtual void EndStep (
void);
244 virtual void BeginStep (
void);
245 virtual void Step (
void);
246 virtual void EndStep (
void);
260 int FARuminate(
void);
263 int FARunToMother(
void);
264 int FAOnNewDay(
void);
265 int FAUpdateEnergy(
void);
270 int BedSiteList[15][2];
279 int m_CareLastHour[6];
284 void CareCounter(
int state);
285 void SelectBedSite ();
286 int RunTo(
int mum_x,
int mum_y,
bool p_IsSafe);
288 void Send_InitCare();
289 void On_UpdateGroup(
int p_group_x,
int p_group_y);
290 void On_ApproachOfDanger(
int p_To_x,
int p_To_y);
296 virtual void On_IsDead(
Roe_Base* Someone,
int whos_dead,
bool fawn);
297 virtual void On_ChangeGroup(
int newgroup);
299 virtual void BeginStep (
void);
300 virtual void Step (
void);
301 virtual void EndStep (
void);
302 virtual void On_EndGroup();
312 int m_MinInState[12];
324 int FEstablishRange(
void);
326 int FUpdateGestation(
void);
327 int FGiveBirth(
void);
328 int FFormGroup(
void);
336 int FCareForYoung(
void);
338 int FUpdateEnergy(
void);
358 void On_UpdateGroup(
int p_group_x,
int p_group_y);
359 void On_ApproachOfDanger(
int p_To_x,
int p_To_y);
360 void Send_EndGroup();
361 virtual void On_EndGroup();
365 virtual void BeginStep (
void);
366 virtual void Step (
void);
367 virtual void EndStep (
void);
368 virtual void On_IsDead(
Roe_Base* Someone,
int whos_dead,
bool fawn);
396 int MEstablishRange(
void);
398 int MEstablishTerritory(
void);
400 int MAttendFemale(
void);
408 int MUpdateEnergy(
void);
412 int m_MinInState[12];
417 void On_ApproachOfDanger(
int p_To_x,
int p_To_y);
418 bool On_InHeat (
Roe_Female* female,
int p_x,
int p_y);
419 void ClearFightlist();
422 bool On_Rank(
Roe_Male* rival,
double size,
int age,
int matings,
bool where,
bool range);
423 virtual void On_IsDead(
Roe_Base* Someone,
int whos_dead,
bool fawn);
425 void RemoveSatellite(
Roe_Male* sat);
427 virtual void BeginStep (
void);
428 virtual void Step (
void);
429 virtual void EndStep (
void);
469 bool AddGridValue(
int x,
int y,
int value);
470 int Supply_GridValue(
int g_x,
int g_y);
471 int Supply_GridCoord(
int p_coor);
490 int m_FixCounter [5000];
494 int m_FixList[5000][20][2];
495 unsigned m_UpperList[100][2];
496 unsigned m_LowerList[100][2];
504 int DeadList[2000][2];
512 int CreateNewGroup(
Roe_Base* p_deer);
515 double RangeQuality(
int p_x,
int p_y,
int p_range);
516 double PercentForest(
int p_x,
int p_y,
int p_range);
517 bool AddToGroup(
Roe_Base* p_deer,
int TheGroup);
518 bool RemoveFromGroup(
Roe_Base* p_deer,
int TheGroup);
519 void RemoveFromFightlist(
Roe_Base* deer);
521 bool InSquare(
int p_x,
int p_y,
int p_sqx,
int p_sqy,
int p_range);
522 void CalculateArea(
int p_a,
int p_b,
int ID);
523 int ScanGrid(
int p_x,
int p_y,
bool avq);
524 int AddToArea(
int g_x,
int g_y,
int p_range);
525 int AddToAreaCC(
int g_x,
int g_y,
int p_range);
526 void Sort(
int ID,
int p_a,
int p_b);
527 void Divide1(
int ID,
int p_a,
int p_b);
528 void Divide2(
int p_a,
int p_b,
int p_c,
bool p_upper);
533 void DeleteFightlist(
int TheList);
534 int AddToFightlist(
Roe_Male* rival,
int ListNo);
536 void RemoveFixList(
int listno);
537 void PreProcessLandscape();
540 virtual void TheAOROutputProbe();
541 virtual void TheRipleysOutputProbe(FILE* a_prb);
553 virtual void Init (
void);
554 void CreateObjects(
int,
TAnimal *pvo,
void*
null ,
556 ListOfMales* SupplyMales(
int p_x,
int p_y,
int SearchRange);
557 ListOfMales* SupplyTMales(
int p_x,
int p_y,
int SearchRange);
558 ListOfMales* SupplyMaleRC(
int p_x,
int p_y,
int SearchRange);
559 ListOfFemales* SupplyFemales(
int p_x,
int p_y,
int SearchRange);
560 ListOfFemales* SupplyFemaleRC(
int p_x,
int p_y,
int SearchRange);
569 void LOG(
int day,
int year);
vector< Roe_Fawn * > Roe_FawnList
Definition: Roe_all.h:31
TRoeDeerStates
Definition: Roe_all.h:45
@ rds_MFeed
Definition: Roe_all.h:82
@ rds_MDisperse
Definition: Roe_all.h:57
@ rds_MRecover
Definition: Roe_all.h:69
@ rds_FAInit
Definition: Roe_all.h:93
@ rds_MRuminate
Definition: Roe_all.h:79
@ rds_FInHeat
Definition: Roe_all.h:62
@ rds_FARunToMother
Definition: Roe_all.h:67
@ rds_FEvade
Definition: Roe_all.h:73
@ rds_FFeed
Definition: Roe_all.h:81
@ rds_FOnNewDay
Definition: Roe_all.h:58
@ rds_MFight
Definition: Roe_all.h:76
@ rds_MAttendFemale
Definition: Roe_all.h:77
@ rds_FRuminate
Definition: Roe_all.h:78
@ rds_FAUpdateEnergy
Definition: Roe_all.h:52
@ rds_FDie
Definition: Roe_all.h:87
@ rds_FMate
Definition: Roe_all.h:85
@ rds_FGiveBirth
Definition: Roe_all.h:63
@ rds_FFormGroup
Definition: Roe_all.h:61
@ rds_FOnMature
Definition: Roe_all.h:47
@ rds_MOnMature
Definition: Roe_all.h:48
@ rds_MEstablishTerritory
Definition: Roe_all.h:55
@ rds_RUBBISH
Definition: Roe_all.h:94
@ rds_FUpdateGestation
Definition: Roe_all.h:49
@ rds_MEvade
Definition: Roe_all.h:74
@ rds_FEstablishRange
Definition: Roe_all.h:53
@ rds_FDisperse
Definition: Roe_all.h:56
@ rds_MDie
Definition: Roe_all.h:88
@ rds_FARuminate
Definition: Roe_all.h:80
@ rds_Initialise
Definition: Roe_all.h:46
@ rds_FARecover
Definition: Roe_all.h:70
@ rds_FRun
Definition: Roe_all.h:65
@ rds_FAOnNewDay
Definition: Roe_all.h:60
@ rds_FCareForYoung
Definition: Roe_all.h:64
@ rds_FUpdateEnergy
Definition: Roe_all.h:50
@ rds_MDeathState
Definition: Roe_all.h:91
@ rds_MRun
Definition: Roe_all.h:66
@ rds_FDeathState
Definition: Roe_all.h:90
@ rds_FRecover
Definition: Roe_all.h:68
@ rds_FADeathState
Definition: Roe_all.h:92
@ rds_FAHide
Definition: Roe_all.h:75
@ rds_MOnNewDay
Definition: Roe_all.h:59
@ rds_MEstablishRange
Definition: Roe_all.h:54
@ rds_FADie
Definition: Roe_all.h:89
@ rds_MMate
Definition: Roe_all.h:86
@ rds_FIgnore
Definition: Roe_all.h:71
@ rds_MUpdateEnergy
Definition: Roe_all.h:51
@ rds_FAFeed
Definition: Roe_all.h:83
@ rds_FASuckle
Definition: Roe_all.h:84
@ rds_MIgnore
Definition: Roe_all.h:72
vector< Roe_Base * > ListOfDeer
Definition: Roe_all.h:41
vector< Roe_Female * > ListOfFemales
Definition: Roe_all.h:40
vector< Roe_Female * > Roe_FemaleList
Definition: Roe_all.h:37
vector< Roe_Male * > ListOfMales
Definition: Roe_all.h:39
vector< Roe_Male * > Roe_MaleList
Definition: Roe_all.h:36
Definition: Roe_all.h:437
int x
Definition: Roe_all.h:439
RoeDeer_Population_Manager * Pop
Definition: Roe_all.h:443
int age
Definition: Roe_all.h:447
int size
Definition: Roe_all.h:446
int ID
Definition: Roe_all.h:448
bool sex
Definition: Roe_all.h:441
Landscape * L
Definition: Roe_all.h:442
int y
Definition: Roe_all.h:440
int group
Definition: Roe_all.h:445
Roe_Female * mum
Definition: Roe_all.h:444
The landscape class containing all environmental and topographical data.
Definition: landscape.h:113
Movement maps are used for rapid computing of animal movement.
Definition: MovementMap.h:51
Base class for all population managers.
Definition: PopulationManager.h:424
Definition: Roe_all.h:233
int m_float_x
Definition: Roe_all.h:240
int m_NewState
Definition: Roe_all.h:238
bool m_DestinationDecided
Definition: Roe_all.h:237
int m_DispCount
Definition: Roe_all.h:239
int m_float_y
Definition: Roe_all.h:241
Definition: Roe_all.h:101
bool m_float
Definition: Roe_all.h:114
int m_RangeCentre_y
Definition: Roe_all.h:108
int m_FixlistNumber
Definition: Roe_all.h:119
unsigned Alive
Definition: Roe_all.h:122
virtual int WhatState()
Definition: Roe_all.h:226
int m_LengthFeedPeriod
Definition: Roe_all.h:136
virtual void On_MumAbandon(Roe_Female *)
Definition: Roe_all.h:216
int m_OldRange_y
Definition: Roe_all.h:112
int m_OldRange_x
Definition: Roe_all.h:111
int SimH
Definition: Roe_all.h:145
int SimW
Definition: Roe_all.h:144
int NutriValue(int polyref)
int m_distrc
Definition: Roe_all.h:142
void Ignore(int p_To_x, int p_To_y)
RoeDeer_Population_Manager * m_OurPopulation
Definition: Roe_all.h:104
bool m_Disperse
Definition: Roe_all.h:115
bool m_Sex
Definition: Roe_all.h:120
virtual void On_UpdateGroup(int, int)
Definition: Roe_all.h:221
int m_RecovCount
Definition: Roe_all.h:133
int m_Cross_x
Definition: Roe_all.h:130
bool m_IsDead
Definition: Roe_all.h:121
int AssessHabitat(int p_x, int p_y)
int timestep
Definition: Roe_all.h:128
int AssessHabitat(int polyref)
virtual void On_IsDead(Roe_Base *, int, bool)
Definition: Roe_all.h:217
int m_Size
Definition: Roe_all.h:106
int DirectionToCC(int p_x, int p_y, int p_To_x, int p_To_y)
Definition: Roe_all.h:158
int LegalHabitatCC(int p_x, int p_y)
Definition: Roe_all.h:172
int m_Cross_y
Definition: Roe_all.h:131
int m_RangeCentre_x
Definition: Roe_all.h:107
Roe_Female * Mum
Definition: Roe_all.h:117
bool m_HaveRange
Definition: Roe_all.h:116
int m_SearchRange
Definition: Roe_all.h:113
int m_FeedCount
Definition: Roe_all.h:135
int m_danger_x
Definition: Roe_all.h:139
int m_LastState
Definition: Roe_all.h:138
int m_danger_y
Definition: Roe_all.h:140
int m_RumiCount
Definition: Roe_all.h:134
virtual void On_EndGroup()
Definition: Roe_all.h:218
int m_ID
Definition: Roe_all.h:118
int CoverCC(int p_x, int p_y)
Definition: Roe_all.h:188
int m_weightedstep
Definition: Roe_all.h:143
int m_Reserves
Definition: Roe_all.h:109
virtual void Send_IsDead()
Definition: Roe_all.h:219
int m_Age
Definition: Roe_all.h:105
double m_HomeRange
Definition: Roe_all.h:110
virtual void On_ChangeGroup(int)
Definition: Roe_all.h:220
double m_EnergyGained
Definition: Roe_all.h:132
int NutriValueCC(int p_x, int p_y)
Definition: Roe_all.h:196
unsigned IsAlive()
Definition: Roe_all.h:123
int DistanceToCC(int p_x, int p_y, int p_To_x, int p_To_y)
Definition: Roe_all.h:150
int m_LengthRuminate
Definition: Roe_all.h:137
TRoeDeerStates CurrentRState
Definition: Roe_all.h:103
int SupplyReserves()
Definition: Roe_all.h:125
void WalkToCC(int pos_x, int pos_y)
Definition: Roe_all.h:209
Definition: Roe_all.h:254
int m_BedSite_y
Definition: Roe_all.h:277
bool m_Orphan
Definition: Roe_all.h:274
int m_MyGroup
Definition: Roe_all.h:292
int m_MinHourlyCare
Definition: Roe_all.h:273
bool m_Mature
Definition: Roe_all.h:272
int m_Bedsite_x
Definition: Roe_all.h:276
int m_memorypointer
Definition: Roe_all.h:283
bool m_InHide
Definition: Roe_all.h:275
int m_Agegroup
Definition: Roe_all.h:271
unsigned m_Count
Definition: Roe_all.h:278
Definition: Roe_all.h:309
int m_NoOfYoung
Definition: Roe_all.h:344
int m_OptGroupSize
Definition: Roe_all.h:350
int SupplyGroupNo()
Definition: Roe_all.h:371
bool m_HaveGroup
Definition: Roe_all.h:351
bool m_GroupUpdated
Definition: Roe_all.h:352
int SupplyIsPregnant()
Definition: Roe_all.h:316
int m_DaysSinceParturition
Definition: Roe_all.h:345
bool m_Care
Definition: Roe_all.h:340
bool m_WasInHeat
Definition: Roe_all.h:354
vector< int > * m_GroupList
Definition: Roe_all.h:348
bool m_NatalGroup
Definition: Roe_all.h:347
int m_HeatCount
Definition: Roe_all.h:353
Roe_Male * m_My_Mate
Definition: Roe_all.h:343
int m_Gestationdays
Definition: Roe_all.h:341
int SupplyYoung()
Definition: Roe_all.h:317
int m_MyGroup
Definition: Roe_all.h:315
bool m_Pregnant
Definition: Roe_all.h:342
bool m_WantGroup
Definition: Roe_all.h:346
Definition: Roe_all.h:465
Landscape * m_LS
Definition: Roe_all.h:473
int * m_grid
Definition: Roe_all.h:478
int m_extent_y
Definition: Roe_all.h:476
int m_SizeOfCells
Definition: Roe_all.h:474
int m_maxcells
Definition: Roe_all.h:477
int m_extent_x
Definition: Roe_all.h:475
Definition: Roe_all.h:380
Roe_Male * SupplyHost()
Definition: Roe_all.h:421
bool SupplyHaveTerritory()
Definition: Roe_all.h:420
Roe_Female * m_My_Mate
Definition: Roe_all.h:384
bool m_HaveTerritory
Definition: Roe_all.h:386
Roe_Male * m_MyTMale
Definition: Roe_all.h:390
int m_NoOfMatings
Definition: Roe_all.h:387
int m_NumberOfFights
Definition: Roe_all.h:388
int m_MyFightlist
Definition: Roe_all.h:389
Definition: Roe_all.h:483
double m_AverageRangeQuality
Definition: Roe_all.h:489
ListOfMales * SupplyFightlist(int ListNo)
Definition: Roe_all.h:531
int SimH
Definition: Roe_all.h:530
ListOfDeer * Supply_RoeGroup(int Group)
Definition: Roe_all.h:520
int m_CriticalWeight_Males
Definition: Roe_all.h:510
int m_NoGroups
Definition: Roe_all.h:488
int m_MinWeight_Females
Definition: Roe_all.h:509
long StepCounter
Definition: Roe_all.h:505
Roe_Grid * m_TheGrid
Definition: Roe_all.h:486
int m_CriticalWeight_Females
Definition: Roe_all.h:511
int Turnover
Definition: Roe_all.h:493
int SimW
Definition: Roe_all.h:529
int m_gridextenty
The number of cells tall in the qual grid.
Definition: Roe_all.h:500
int m_gridextentx
The number of cells wide in the qual grid.
Definition: Roe_all.h:498
int m_FemaleDispThreshold
Definition: Roe_all.h:507
double Supply_AverageRangeQuality()
Definition: Roe_all.h:514
MovementMap * m_MoveMap
Map of suitability for movement.
Definition: Roe_all.h:503
void LOG(int day, int year)
long m_totalarea
Definition: Roe_all.h:492
int m_MaleDispThreshold
Definition: Roe_all.h:506
int m_MinWeight_Males
Definition: Roe_all.h:508
size_t Supply_GroupSize(int Group)
Definition: Roe_all.h:513
Part of the basic ALMaSS system (obselete)
Definition: PopulationManager.h:187
The base class for all ALMaSS animal classes.
Definition: PopulationManager.h:205
Definition: Roe_all.h:454
int Size
Definition: Roe_all.h:457
unsigned group_x
Definition: Roe_all.h:458
unsigned group_y
Definition: Roe_all.h:459
Data structure to hold & output probe data probe data is designed to be used to return the number of ...
Definition: PopulationManager.h:284
TTypesOfLandscapeElement
Definition: tole_declaration.h:36